Apparatus and method for providing domain information

ABSTRACT

An apparatus for providing domain information is disclosed. The apparatus includes a storage module that stores domain information, and a control module that receives a first message broadcast from a device intending to join a domain, responds to the received first message, and transmits its information to the device, in which the control module responds to a second message transmitted based on the information, and transmits the stored domain information to the device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based on and claims priority from Korean Patent Application No. 10-2007-0006915 filed on Jan. 23, 2007, in the Korean Intellectual Property Office, and U.S. Provisional Patent Application No. 60/846,105 filed on Sep. 21, 2006, in the United States Patent and Trademark Office, the disclosures of which are incorporated herein in its entirety by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Methods and apparatuses consistent with the present invention relate to an apparatus and method for providing domain information. More particularly, the present invention relates to an apparatus and method for providing information about a domain when a device intends to join the domain.

2. Description of the Related Art

CORAL is a technology for improving interoperability between digital rights management (DRM) technologies. The concept of a domain, which represents a logical set of multiple devices, is presented in CORAL. A domain-management server, also called a domain manager, manages such a domain. The domain is described in detail in “Core Architecture V3.0” and “Ecosystem V1.0” of the CORAL specification.

The domain-management server manages domains so that each of the devices belongs to a domain according to specified rules, and content can be shared between devices belonging to the same domain.

The method involving a device joining a domain is described with reference to FIG. 1 as follows.

First, it is assumed that there is a first device 110 in domain A. If a second device 120 intends to join domain A, the second device 120 connects to a domain-management server 140, receives information about domain A from the domain-management server 140, and sets up the environment using the received information.

The information about domain A includes the type, function, and identification information of the device included in domain A, and can also include information about the domain-management server 140, such as the network address (e.g., a Uniform Resource Locator (URL) address) of the domain-management server 140 managing domain A.

Further, the domain-management server 140 can perform the authentication on the second device 120, and a substitute-authentication device 130 can separately exist within domain A. If there is a substitute-authentication device 130, information of domain A can include information of the substitute-authentication device 130 (e.g., the type, function and identification information of the device).

Likewise, according to the related art, in order for a device to join a domain, information about the domain, that is, domain information, should be set up, and thus the device should connect to a separate domain-management server and receive domain information.

For a user to connect to a domain-management server using a device, the user should directly input the address of the domain-management server using an input means attached in the device, or retrieve the stored address of the domain-management server.

If a device, such as a notebook computer or a personal computer, has a means for inputting letters, the domain-management server can be connected. However, if the device includes only a 4-way key or an inconvenient input means, it is difficult to connect to the domain-management server.

Further, because the device should have a wired or wireless communication function for connecting to the domain-management server, a device having no such function cannot join the domain.

Therefore, there is a need for a method where devices having an interface for connecting to a domain-management server that is difficult to join, or having no wired or wireless internet function, can join a domain.

SUMMARY OF THE INVENTION

The present invention provides an apparatus and method for setting up domain information after receiving domain information directly transmitted from an existing device without separate communication with a domain-management server.

According to an aspect of the present invention, there is provided an apparatus for providing domain information, the apparatus including a storage module that stores domain information, and a control module that receives a first message broadcast from a device intending to join a domain, responds to the received first message, and transmits its information to the device, in which the control module responds to a second message transmitted based on the information, and transmits the stored domain information to the device.

According to an aspect of the present invention, there is provided a method of providing domain information, the method including receiving a first message broadcast from a second device intending to join a domain by a first device, transmitting information of the first device in response to the received first message, receiving a second message that requests domain information of the domain from the second device by the first device, and providing the domain information in response to the second message by the first device, in which the second message is generated based on information of the first device.

According to an aspect of the present invention, there is provided a method of providing domain information, the method including a first device broadcasting a first message that informs that it intends to join a domain, receiving a message including information of a second device from the second device belonging to the domain in response to the first message, transmitting a second message requesting domain information of the domain based on the information to the second device by the first device, and receiving a message including the requested domain information from the second device in response to the second message.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects of the present invention will become apparent by describing in detail in the exemplary embodiments thereof with reference to the attached drawings in which:

FIG. 1 illustrates a method where a device joins a domain according to CORAL.

FIG. 2 illustrates a system for providing domain information according to an exemplary embodiment of the present invention.

FIG. 3 is a block diagram illustrating the structure of a device for providing domain information according to an exemplary embodiment of the present invention.

FIG. 4 illustrates a method of providing domain information according to an exemplary embodiment of the present invention.

FIG. 5 illustrates a method of providing domain information according to another exemplary embodiment of the present invention.

DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS OF THE INVENTION

Exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

The present invention may be understood more readily by reference to the following detailed description of exemplary embodiments and the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the exemplary embodiments set forth herein. Rather, these exemplary embodiments are provided to convey the concept of the invention to those skilled in the art, and the present invention will only be defined by the appended claims. Like reference numerals refer to like elements throughout the specification.

The exemplary embodiments are described hereinafter with reference to flowchart illustrations of user interfaces, methods, and computer program products. It will be understood that each block of the flowchart illustrations, and combinations of blocks in the flowchart illustrations, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which are executed via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart block or blocks.

These computer program instructions may also be stored in a computer usable or computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer usable or computer-readable memory produce an article of manufacture including instruction means that implement the function specified in the flowchart block or blocks.

The computer program instructions may also be loaded into a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions that are executed on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart block or blocks.

Further, each block of the flowchart illustrations may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that in some alternative implementations, the functions noted in the blocks may occur out of the order. For example but not by way of limitation, two blocks shown in succession may in fact be executed substantially concurrently or the blocks may sometimes be executed in reverse order.

FIG. 2 illustrates a system for providing domain information according to an exemplary embodiment of the present invention. While a first device 210 and a second device 220 join a domain and operate, a user introduces a third device 230, and tries to replay a music file stored in the first device 210 using the third device 230. Further, the first device 210, the second device 220, and the third device 230 support a common communication protocol.

First, the third device 230 broadcasts a message requesting information of devices belonging to the current domain while informing of information about the third device 230, and each of the devices transmits a message including its information, for example, device-identification information or information of provided functions, to the third device 230 in response to the broadcast message. Here, the message broadcast by the third device 230 can include strings indicating that the third device 230 is an element constituting an “ecosystem” specified in the CORAL, that is, a “specified service model supporting the CORAL”. That is, the identification information of the ecosystem to which the third device 230 belongs is included in the message, and is broadcast to devices belonging to the current domain.

A process where a device intending to join an arbitrary domain informs devices existing in the domain of its existence, and receives information of each of the existing devices in response is called a discovery process. The discovery process can be performed using a mutual-recognition method between devices constituting a communication-network environment specified according to the related art.

Through such a process, the third device 230 obtains information of devices belonging to a domain.

Then, the third device 230 selects a device of devices belonging to the current domain, and sends a request for domain information. Here, the third device 230 has selected the first device 210. The user can directly select a device or the third device 230 can arbitrarily select a device.

In response to the request for domain-information, the first device 210 transmits its domain information to the third device 230, the third device 230 sets up the environment for operation within the domain using the transmitted domain information.

That is, the first device 210 that joined a domain provides domain information to the third device 230, and therefore a user does not need to input domain information in the third device 230, and can set up the domain environment using the domain information received from the first device 210. After domain environment is appropriately set up, the third device 230 can receive domain-related services provided by the domain-management server without additional user input.

In a case where a user directly connects the third device 230 to the first device 210, the aforementioned operations can be omitted. The first device 210 can provide its domain information to the third device 230, and the first device 210 informs a domain-management server (not shown) of the fact that the third device 230 has joined the domain. Here, the domain information of the domain-management server (not shown) is updated.

When the domain-environment setup of the third device 230 is completed, the third device 230 can connect to the domain-management server (not shown), and register it in the domain-management server using domain information received from the first device 210. Further, when a new device is registered in the domain-management server, the domain-management server informs all devices belonging to the domain of the registration. In this manner, all devices belonging to the same domain can keep the same domain information.

FIG. 3 is a block diagram illustrating a device for providing domain information according to an exemplary embodiment. The device 300 is a device that provides domain information, and corresponds to the first device 210 illustrated in FIG. 2. The device 300 for providing domain information includes a storage module 310, a communication-interface module 320, a device-connection module 330, and a control module 340.

The storage module 310 stores domain information, and the stored domain information includes the type, function and identification information of a device included in the domain, and information about a domain-management server like a network address (e.g., an URL) of the domain-management server that manages the domain. Further, the storage module 310 can include information of the device 300.

The communication-interface module 320 communicates with the domain-management server, or communicates with other devices belonging to the domain through a wired or wireless medium. Further, the communication-interface module 320 can communicate with devices intending to join a domain.

The device-connection module 330 is a module to directly connect to other devices, and can be a communication module supporting the communication between devices such as a USB communication module or an IEEE 1394 communication module. However, the exemplary embodiments are not limited thereto, and another communication module as would be understood by one skilled in the art may be substituted therefor.

The control module 340 controls the overall operation of the device 300, and especially extracts domain information stored in the storage module 310 and generates data to transmit the extracted domain information to the device intending to join the domain.

The operation between modules constituting the device 300 illustrated in FIG. 3 is described in detail with reference to FIGS. 4 and 5 as follows.

FIG. 4 illustrates a method of providing domain information according to an exemplary embodiment of the present invention.

If the communication-interface module 320 receives a message requesting information of a device 300 from a device with an intention to join a domain while informing of the existence of the device (S410), the control module 340 extracts information of the device 300 from the storage module 310, and transmits the extracted information to the device through the communication-interface module 320 (S420). That is, the aforementioned discovery process is performed.

Here, the message transmitted from the device intending to join can include strings indicating that the device is an element constituting an “ecosystem” specified in the CORAL, that is, a “specified service model supporting the CORAL”. That is, the identification information of the ecosystem can be included in the message and broadcast to devices belonging to the current domain, and FIG. 4 illustrates the case where a certain device 300 receives the broadcast message.

The strings can be in the following format.

“coral-<coralEcosystemName>”

Here, <coralEcosystemName> is identification information of the service model to which the device belongs, and an example of such identification is the name of a service model.

If the device sends a request for domain information to the device 300 (S430), the control module 340 extracts domain information stored in the storage module 310, and transmits the extracted domain information to the device through the communication-interface module 320 (S440).

The device sets up domain environment using the received domain information (S450), connects to the domain-management server (not shown) based on the domain information, and informs the domain of the joining (S460). Here, the domain-management server updates the existing domain information (S470), and broadcast the result of the update to all devices belonging to the current domain. As such, all devices belonging to the domain can keep the same domain information.

As another example, the domain-environment setup of the device is completed, the device 300 can inform all devices joining the domain and the domain-management server of the fact that a new device belongs to the domain. That is, the device that provides domain information can broadcast the update of the domain information by the device joining the domain.

FIG. 4 illustrates the case where a specified device 300 existing in a domain provides domain information a device intending to join the domain. However, other devices existing in the domain can provide domain information while the discovery process is performed on the device intending to join the domain.

FIG. 5 illustrates a method of providing domain information according to another exemplary embodiment.

A user connects a device intending to join a domain to the device-connection module 330 of the device (S510).

If the device sends a request for domain information to the device 300, the control module 340 extracts domain information stored in the storage module 310, and transmits the extracted domain information to the device through the device-connection module 330 (S530).

The device intending to join the domain sets up domain environment using the received domain information (S540), and the device 300 connects to the domain-management server through the communication-interface module 320, and informs that a new device has joined the domain (S550).

Here, the domain-management server updates the existing domain information (S560), and broadcasts the result of the update to devices belonging to the current domain. As such, devices belonging to the domain can keep the same domain information.

The term “module”, as used herein, means, but is not limited to, a software or hardware component, such as a Field Programmable Gate Array (FPGA) or an Application Specific Integrated Circuit (ASIC), which performs certain tasks. A module may be configured to reside on the addressable storage medium and are configured to be executed on one or more processors. Thus, a module may include, by way of example, components, such as software components, object-oriented software components, class components and task components, processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, and variables. The functionality provided for in the components and modules may be combined into fewer components and modules or further separated into additional components and modules.

It should be understood by those of ordinary skill in the art that various replacements, modifications and changes may be made in the form and details without departing from the spirit and scope of the present invention as defined by the following claims. Therefore, it is to be appreciated that the above described exemplary embodiments are for purposes of illustration only and are not to be construed as limitations of the invention.

According to the apparatus and method of the present invention, devices can join a domain. 

1. An apparatus for providing domain information, the apparatus comprising: a storage module that stores domain information; and a control module that receives a first message broadcast from a device intending to join a domain, responds to the received first message, and transmits information to the device, wherein the control module responds to a second message transmitted based on the information, and transmits the stored domain information to the device.
 2. The apparatus of claim 1, wherein the device sets a domain environment with the transmitted domain information.
 3. The apparatus of claim 1, wherein the first message includes identification information of a service model to which the device belongs.
 4. The apparatus of claim 3, wherein the service model supports CORAL.
 5. The apparatus of claim 1, wherein said device is connectable via a wired or wireless connection.
 6. The apparatus of claim 1, wherein said control module is one of software, hardware, or a software-hardware hybrid.
 7. The apparatus of claim 1, further comprising a computer readable medium including instructions for implementing operation of the control module.
 8. A method of providing domain information, the method comprising: receiving a first message broadcast from a first device intending to join a domain via a second device; transmitting information of the second device in response to the received first message; receiving a second message that requests domain information of the domain from the first device by the second device; and providing the domain information in response to the second message by the second device, wherein the second message is generated based on information of the second device.
 9. The method of claim 8, wherein the first device sets a domain environment using the transmitted domain information.
 10. The method of claim 8, wherein the first message includes identification information of a service model to which the first device belongs.
 11. The method of claim 8, wherein the service model supports CORAL.
 12. The method of claim 8, further comprising connecting the first device with the second device by one of a wired and wireless connection.
 13. A computer readable medium including a set of instructions for performing operations of the method of claim
 8. 14. A method of providing domain information, the method comprising: broadcasting a first message that informs of a first device via the first device intending to join a domain; receiving a message including information of a second device from the second device belonging to the domain in response to the first message; transmitting a second message requesting domain information of the domain based on information broadcast to the second device by the first device; and receiving a message including the requested domain information from the second device in response to the second message.
 15. The method of claim 14, wherein the first device sets a domain environment using the transmitted domain information.
 16. The method of claim 14, wherein the first message includes identification information of a service model to which the first device belongs.
 17. The method of claim 16, wherein the service model supports CORAL.
 18. A computer readable medium including a set of instructions for performing operations of the method of claim
 14. 